#!/usr/bin/env python
"""
Dynamic reconfigure config file for the Oculus
SimpleFireRequest message.

TODO: add option to change flags, maybe sliders are not
      the best option for all variables, find a way to
      display description in GUI.

Author: Aldo Teran <aldot@kth.se>
"""

PACKAGE='oculus_sonar'
import roslib
roslib.load_manifest(PACKAGE)

from dynamic_reconfigure.parameter_generator_catkin import *

gen = ParameterGenerator()

#           Name        Type    Level            Description          Default Min   Max
gen.add("masterMode", int_t,      0,   "Low freq (1), High freq (2)",    1,    1,     2)
gen.add("gamma",      int_t,      0,   "Gamma correction",               150,  1,   200)
gen.add("range_m",    int_t,      0,   "Range in meters",                10,   1,   120)
gen.add("gain",       double_t,   0,   "Gain in percentage",             0,    0,   100)
gen.add("vOfSound",   double_t,   0,   "Velocity of sound",              0,    0,  2000)
gen.add("salinity",   double_t,   0,   "Salinity of water in ppm",      0,    0,    50)

pingRate = gen.enum([gen.const("pingRateNormal",  int_t, 0, "10Hz Max"),
                     gen.const("pingRateHigh",    int_t, 1, "15Hz Max"),
                     gen.const("pingRateHighest", int_t, 2, "40Hz Max"),
                     gen.const("pingRateLow",     int_t, 3, "5Hz Max"),
                     gen.const("pingRateLowest",  int_t, 4, "2Hz Max"),
                     gen.const("pingRateStandby", int_t, 5, "Disabled")],
                    "Different ping rates for the echosounder")

gen.add("pingRate",   int_t,     0,    "Pinging rate for sonar",         0,    0,   5)


exit(gen.generate(PACKAGE, "oculus_sonar", "Oculus"))
